2. Сортировка
Сортировка – важный навык, который ребѐнок должен
усовершенствовать до того, как пойдѐт в школу. Когда
ребѐнок разделяет предметы по определѐнному признаку, он
изучает основы счѐта, развивает мелкую моторику и учится
называть и группировать объѐкты.
3. Задание
Имеются чѐрный, белый и синий ящики. В полосатом
ящике находятся черные, белые и синие шары, по 5 шаров
каждого цвета. Выполните сортировку шаров, поместив
белые шары в белый ящик, черные в черный, синие в синий.
Составьте алгоритм решения предложенной задачи и
представьте его в виде блок-схемы.
4. Шар
черный? Шар
Шар
синий?
белый?
В полосатом
ящике есть
шары?
Положить шар в
синий ящик
Положить шар в
белый ящик Положить шар в
черный ящик
Вынуть из
полосатого
ящика один шар
Взять белый,
синий и конец
черный ящики начало
5. начало
В полосатом нет
Взять белый,
синий и ящике есть
черный ящики шары?
да
конец
Вынуть из
полосатого
ящика один шар
да нет
Шар
белый?
Положить шар в Шар нет
белый ящик да черный?
Положить шар в Положить шар в
черный ящик синий ящик
6. Сортировка массива
Сортировкой или упорядочением массива называется
расположение его элементов по возрастанию (или
убыванию). Если не все элементы различны, то надо
говорить о неубывающем (или невозрастающем) порядке.
Известно много различных алгоритмов. Критерии оценки
эффективности этих алгоритмов могут включать следующие
параметры:
• количество шагов алгоритма, необходимых для
упорядочения;
• количество сравнений элементов;
• количество перестановок, выполняемых при сортировке.
7. Метод пузырька
Представьте, что массив (таблица) расположен вертикально.
Элементы с большим значением всплывают вверх наподобие
больших пузырьков. При первом проходе вдоль массива, начиная
проход "снизу", берется первый элемент и поочередно сравнивается
с последующими. При этом:
• если встречается более "легкий" (с меньшим значением)
элемент, то они меняются местами;
• при встрече с более "тяжелым" элементом, последний
становится "эталоном" для сравнения, и все следующие
сравниваются с ним .
В результате наибольший элемент оказывается в самом верху
массива.
Во время второго прохода вдоль массива находится второй по
величине элемент, который помещается под элементом, найденным
при первом проходе, т.е на вторую сверху позицию, и т.д.
8. Пример
Заполнить квадратную матрицу случайными целыми числами.
Упорядочить каждую строку матрицы по возрастанию значений
элементов.
Const n=4;
Type: vector=array[1..n] of integer;
Var Matr: array[1..n] of vector; k,l: integer;
{Начало процедуры сортировки}
Procedure SortVector(Var A: vector);
Var i,j,x: integer; Flag: boolean;
Begin
Flag:=true; i:=1;
While (i<=n-1) and Flag Do
Begin
Flag:=false;
For j:=1 To n-I Do
9. If A[j]>A[j+1] Then
Begin X:=A[j]; A[j]:=A[j+1];
A[j+1]:=X; flag:=true End;
i:=i+1
End
End; {Конец процедуры сортировки}
{Начало процедуры вывода матрицы}
Procedure PrintMatr(Var M: array[1..n] of vector;
Var I,j: integer;
Begin
For i:=1 To n Do
Begin
For j:=1 To n Do Write (M[i][j]:3);
Writeln
End
End; {Конец процедуры вывода матрицы}
{Основная программа}
Begin
10. Randomize;
{Заполнение матрицы}
For k:=1 To n Do
For l:=1 To n Do
Matr[k][l]:=Random(10);
{Вывод исходной матрицы}
Writeln(‘Исходная матрица:’);
PrintMatr(Matr);
{построчная сортировка}
For k:=1 To n Do SortVector(Matr[k]);
{вывод отсортированной матрицы}
Writeln(‘отсортированная матрица:’);
PrintMatr(Matr)
End.
11. Сортировка вставками
Второй метод называется метод вставок., т.к. на j-ом
этапе мы "вставляем" j-ый элемент M[j] в нужную позицию
среди элементов M[1], M[2],. . ., M[j-1], которые уже
упорядочены. После этой вставки первые j элементов
массива M будут упорядочены.
12. Сортировка посредством перебора
Идея сортировки с помощью выбора не сложнее двух
предыдущих. На j-ом этапе выбирается элемент наименьший
среди M[j], M[j+1],. . ., M[N] и меняется местами с
элементом M[j]. В результате после j-го этапа все
элементы M[j], M[j+1],. . ., M[N]будут упорядочены.
13. Задания
1. Дан массив, состоящий из 100 целых чисел:
А) вывести все числа, которые встречаются в этом массиве
по нескольку раз;
Б) вывести все числа, которые встречаются в массиве только
по одному разу.
2. В целочисленном массиве размером 10х10 найдите
максимальное значение и индексы всех элементов,
равных ему.
14. Упражнения для глаз
• Закрыть глаза, сильно напрягая глазные мышцы, на счет 1-
4, затем раскрыть глаза, расслабив мышцы глаз, посмотрев
вдаль на счет 1-6.
– Повторить 4-5 раз.
• Посмотреть на переносицу и задержать взор на счет 1-4.
До усталости глаза доводить нельзя. Затем открыть глаза,
посмотреть вдаль на счет 1-6.
– Повторить 3-4 раза.
Упражнения выполняются стоя или сидя, отвернувшись от
экрана при ритмичном дыхании, с максимальной амплитудой
движения глаз.
15. Источники
• Семакин И.Г. Информатика и ИКТ. Профильный уровень: учебник для
11 класса/ И.Г.Семакин, Е.К.Хеннер, Л.В.Шестакова.– М.: БИНОМ.
Лаборатория знаний, 2012.
• http://www.mamask.ru/threeyear/6-leaving/878-igri-deti-2-goda
• http://festival.1september.ru/articles/212288/
• http://www.vzmakh.ru/info/pascal/modules/page14.html